//两种作用域 一种词法作用域（js的执行环境,函数作用域，也就是函数定义的地方），一种动态作用域
//词法作用域首先会在bar函数中查找，如果找不到的话然后才会在全局作用域中查找
//动态作用域首先也是在bar函数中查找，没有找到的话会顺着调用栈查找  因此输出的会是8
var a=8
function bar(){
  console.log(a)
}
function foo(){
  var a=4;
  bar()
}
foo()
